package com.yugao.fintech.antelope.codegen.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yugao.fintech.antelope.codegen.model.entity.TemplateConfig;
import com.yugao.fintech.antelope.codegen.model.rqrs.CopyTemplateRQ;
import com.yugao.fintech.antelope.codegen.model.rqrs.TemplateConfigRQ;
import com.yugao.fintech.antelope.codegen.model.rqrs.TemplateConfigRS;
import com.yugao.fintech.antelope.codegen.model.rqrs.TemplateQueryRQ;

import java.util.List;


public interface TemplateConfigService {
    List<TemplateConfig> listByIds(List<Long> idList);

    TemplateConfig getById(Long id);

    List<TemplateConfig> listAll();

    boolean save(TemplateConfigRQ req);

    void updateById(TemplateConfigRQ req);

    void deleteById(TemplateConfig templateConfig);

    List<TemplateConfigRS> listByGroupId(Long groupId);

    /**
     * 复制模板
     */
    void copyById(CopyTemplateRQ req);

    IPage<TemplateConfig> page(TemplateQueryRQ req);

    void deleteBatchByIds(List<Long> ids);

    List<TemplateConfig> list(TemplateQueryRQ req);

    /**
     * 导入模板数据
     *
     * @param list 数据列表
     * @param updateSupport 是否更新支持，如果已存在，则进行更新数据
     * @return 结果
     */
    String importExcel(List<TemplateConfig> list, Long groupId, boolean updateSupport);
}
